home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / et / et3_0-a1.lha / et3 / src / BorderItems.h < prev    next >
C/C++ Source or Header  |  1992-06-09  |  1KB  |  55 lines

  1. #ifndef BorderItems_First
  2. #ifdef __GNUG__
  3. //pragma once
  4. #pragma interface
  5. #endif
  6. #define BorderItems_First
  7.  
  8. #include "TextItem.h"
  9. #include "CompVObject.h"
  10.  
  11. const int cBorderTitleGap= 4;
  12. const int cHTitleGap    = 10;
  13. const int cBorder       = 9,
  14.       cTitleGap     = 5;        // gap between titlebar and contents
  15.  
  16. //---- Matte -------------------------------------------------------------------
  17.  
  18. class Matte: public CompositeVObject {
  19. public:
  20.     MetaDef(Matte);
  21.  
  22.     Matte(VObject *inner);
  23.     Matte(Point border, VObject *inner);
  24.     Matte(int id, Point border, VObject *inner);
  25.  
  26.     Point GetBorder()
  27.     { return border; }
  28.     void SetBorder(Point b);
  29.     void SetOrigin(Point at);
  30.     void SetExtent(Point e);
  31.     Metric GetMinSize();
  32.     OStream& PrintOn(OStream&);
  33.     IStream& ReadFrom(IStream&);
  34.  
  35. protected:
  36.     Point border;
  37. };
  38.  
  39. //---- BorderItem -------------------------------------------------------------------
  40.  
  41. class BorderItem: public CompositeVObject {
  42. public:
  43.     MetaDef(BorderItem);
  44.     BorderItem(VObject *inner);
  45.     BorderItem(VObject *title, VObject *inner);
  46.     BorderItem(char *title, VObject *inner);
  47.     void SetOrigin(Point at);
  48.     void SetExtent(Point e);
  49.     Metric GetMinSize();
  50.     void Draw(Rectangle r);
  51. };
  52.  
  53. #endif
  54.  
  55.